import java.util.Arrays;

/*给定一个非空整数数组，除了某个元素只出现一次以外，其余每个元素均出现两次。找出那个只出现了一次的元素。
示例 1:
输入: [2,2,1]
输出: 1
示例 2:
输入: [4,1,2,1,2]
输出: 4  */
public class One {
    public static int oneTime(int[]arr)
    {
        int one=arr[0];
        if(arr.length==1)//如果只有一个元素返回1
        {
            return one;
        }
        else{
            for (int i = 1; i <arr.length ; i++) {
                 one^=arr[i];//任何数异或它本身都为0，任何数与0异或都为它本身
            }
            return one;
        }
    }
    public static void main(String[] args) {
        int[]arr={4,1,2,1,2};
        System.out.println("数组："+ Arrays.toString(arr));
        int onetime=oneTime(arr);
        System.out.println("数组中只出现一次的元素："+onetime);
    }
}
